package com.tjetc._2map;

import java.util.Hashtable;

@SuppressWarnings("all")
public class _3Hashtable {
    public static void main(String[] args) {
        /*
            1.hashtable的键和值都不能为null,否则会抛出NullPointerException
                int hash = key.hashCode();
                if (value == null) {
                    throw new NullPointerException();
                }
            2.hashTable是线程安全的(synchronized),hashMap是线程不安全的
            3.虽然他是线程安全的 从1.8以后出现了CurrentHashMap 线程安全的

            特点：
            1.开始初始化为11 加载因⼦ 0.75f
            2.底层维护了⼀个 Hashtable$Entry[]
            3.int newCapacity = (oldCapacity << 1) + 1; 扩容，⼤⼩为2倍 + 1
            4. 拓展：ConcurrentHashMap 不是锁hash表 锁⼀个块  Hashtable 锁整个h
            ash表 所以使用ConcurrentHashMap更有效率


         */

        Hashtable hashtable = new Hashtable();

    }
}
